Saltar al contenido principal
Version: 1.3

Recurso Reportes

Este recurso nos permite operar sobre los reportes almacenados en el Servidor de Reportes.

Modelo

Para este recurso el modelo consta de las siguientes componentes:

  • proyecto: Identificador del proyecto, es un string que identifica el proyecto sobre el cual se opera.
  • id: Identificador corto, puede ser el nombre del archivo.
  • uri: Identificador del archivo, es un string que identifica el archivo en el servidor.
  • parametros: Arreglo de parametros a pasar al reporte
  • imagen: Es un campo compuesto que contiene los siguientes datos
    • uri: Identificador del archivo, es un string que identifica la imagen en el servidor.
    • data: El contenido de la imagen en formato base64.
  • source: Es un campo compuesto que contiene los siguientes datos
    • uri: Identificador del archivo, es un string que identifica el siguiente contenido en el servidor.
    • data: El contenido del archivo en formato jrxml.
  • archivo: Es un campo compuesto que contiene los siguientes datos
    • uri: Identificador del archivo, es un string que identifica el archivo en el servidor.
    • tipo: Enumerado que indica el tipo de archivo a procesar, por ej ('jrxml', 'pdf', 'html', 'xls', 'rtf').
    • data: El contenido del archivo en formato base64.
    • temporal: Un entero que indica si el archivo debe quedar persistido en el servidor o no.

Modelo

Por ejemplo:

{
"proyecto": "Imhotep",
"id": "Hechizados",
"uri": "/reportes/Imhotep/Hechizos/Hechizados",
"source" : {
"data": base64encode(file_get_contents("/path/to/hechizos.jrxml"))
}
}

Operaciones disponibles

  • get_list: Obtiene el listado de los reportes disponibles para el proyecto.
  • get: Ejecuta la generacion del reporte indicado por uri con los datos y el tipo de salida especificados
  • post_list: Crea y almacena un reporte con los datos especificados y devuelve su uri absoluto.
  • delete_list: Elimina el reporte indicado por el uri.

Por ejemplo, si realizamos el siguiente pedido:

curl -X POST "http://siu:81/reportes/v2/reportes" -H "accept: application/json" -H "Content-Type: application/json" -d "@./docs/ejemplos/jasper/addReport/item_list/descriptor.json"

Obtendremos como respuesta el uri del reporte la cual luego utilizaremos en su ejecución.

{
"uri": "/reportes/Imhotep/Hechizos/Hechizados"
}